#ifndef _Schedule_
#define _Schedule_

#include <string>

using namespace std;

class Schedule{
public: 
	enum LEVEL{
		LOW, NORMAL, HIGH
	};
	enum DATATYPE
	{
		DAY,STARTTIME,ENDTIME,NAME,PLACE,PRIORITY
	};

private:
	string _day;
	string _start_time;
	string _end_time;

	string _event_name;
	string _place;
	LEVEL _priority_level;

public:
//Day & time format:
//day - 6 characters format: yy/mm/dd. 
//	Example: 25th September 2012 --> 120925
//time - 4 characters format: 0930,1500,1700

	Schedule(string day, string start_time, string end_time, 
		string event_name, string place,LEVEL priority_level);
	Schedule(){};
	void set_day(string day);
	void set_time(string start_time, string end_time);
	void set_place(string place);
	void set_name(string name);
	void set_priority(LEVEL priority_level);

	string get(DATATYPE type);
	string get_day();
	string get_start_time();
	string get_end_time();
	string get_name();
	string get_place();
	LEVEL get_priority();

	bool check_clash(Schedule* schedule);
	//one name but 2 methods:
	static LEVEL priority_converter(string level);
	static string priority_converter(LEVEL level);
};

string to_lower_case(string in);

#endif